It is often necessary for a data processing system to control devices by sending signals which control events at discrete times following varying delay periods. One example is a printer where various functions such as paper drive or print head movement are controlled by stepper motors. Such motors require signals to change the electrical charge from one winding or set of windings to another winding or set of windings. The signals must occur at precise times if an efficient, smooth movement is to be accomplished. In addition while acceleration of the move is ocurring the time delays between pulses must be continuously diminishing and during deceleration the time delays must be a series of properly increasing time periods to effect a slowing of the motion to a detented stop. Very precise timings are necessary for efficient operation and are vital in an open loop system where improper action resulting from the signal or command would not be immediately known to the device.
It has been common in the prior art to provide a delay counter which is loaded with a value and a signal generated when the count is achieved. Where the control sequence requires a succession of interrelated delays, that may be either the same or varying in duration, the loading of the delay counter must occur before the next pulse is received which will increment or decrement the counter. Failure to load the counter prior to this occurrence will induce an error that is likely to cause irregular operation of the controlled device if not a completely false or improper action.